package com.ncr.travel.appmgr.client.view;

import com.google.gwt.user.client.ui.DisclosurePanel;
import com.google.gwt.user.client.ui.DockLayoutPanel;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.Frame;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Panel;
import com.ncr.travel.appmgr.client.mvp.View;
import com.ncr.travel.appmgr.client.presenter.CategoryAndScreenPresenter;
import com.ncr.travel.appmgr.model.shared.Product;

public interface CategoryAndScreenView extends View {

	void setPresenter(CategoryAndScreenPresenter presenter);

	DockLayoutPanel getNavPaneAndScreenDockPanel();
	
	//ND31012012:
	Panel getProductCatNavPanel();

	//ND30012012, Commented, as nav panel no more contains scroll panel.
	/*ScrollPanel getProductCatNavScrollPanel();*/

	Panel getContentWindowWorkPanel();

	FlowPanel getProductCategoryHeaderPanel();

	GraphicsEditorView getGraphicsEditor();

	Label getContentHeaderLabel();

	Label getContentMenuItemSelectedLabel();
	
	//ND27012012: Trying to make one productCategory disc panel only to remain open
	DisclosurePanel getExpandedProductCategoryDiscPanel();
	
	//ND27012012: Trying to make one productCategory disc panel only to remain open
	void setExpandedProductCategoryDiscPanel(DisclosurePanel expandedProductCategoryDiscPanel);

	void setGreenScreenLabel(Label greenScreenLabel);

	Label getGreenScreenLabel();
	
	//ND27012012: Trying to make one SubScreen disc panel only to remain open
	DisclosurePanel getExpandedSubScreenDiscPanel();
	
	//ND27012012: Trying to make one SubScreen disc panel only to remain open
	void setExpandedSubScreenDiscPanel(DisclosurePanel expandedSubScreenDiscPanel);

	Label getSubScreenHeaderLabel();

	Frame getScreenFrame();

	void setProductCategoryHeaderPanel(FlowPanel productCategoryHeaderPanel);

	void setSubScreenHeaderLabel(Label subScreenHeaderLabel);

	void showView();

	void setProduct(Product product);
	
//	FlowPanel getContentWindowCmdButtonsPanel();
	
	Label getConfigBtn();
	
	void setConfigBtn(Label configBtn);

}
